 /* Copyright 2018 JDCLOUD.COM

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http:#www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

云数据库RDS
目前RDS OpenAPI支持云数据库 MySQL、Percona、MariaDB、SQL Server、PostgreSQL

OpenAPI spec version: v1
Contact: 

NOTE: This class is auto generated by the jdcloud code generator program.
*/


#import <Foundation/Foundation.h>
#import <JDCloudOCSDKRds/RdsExecutor.h>

@implementation RdsClient

@synthesize userAgent = _userAgent;
@synthesize serviceName = _serviceName;
@synthesize version = _version;

-(void) addCustomerHeaderWithKey:(NSString*) key
                           value:(NSString*) value{
    if(![self customHeader])
    {
        self.customHeader = [[NSMutableDictionary alloc] init];
    }
    if(key && value)
    {
        [[self customHeader] setValue:value forKey:key];
    }
   
}

-(id)initWithGlobalConfig{
    if(![GlobalConfig credential])
    {
        NSException *e = [SDKArgumentNullException exceptionWithName:@"ArgumentNullException" reason:@"GlobalConfig credential not config" userInfo:nil];
        @throw e;
    }
    self.credential = [GlobalConfig credential];
    if(![GlobalConfig sdkEnvironment])
    {
        self.sdkEnvironment = [[SDKEnvironment alloc] initWithEndPoint:@"rds.jdcloud-api.com"];
    }else
    {
        self.sdkEnvironment = [GlobalConfig sdkEnvironment];
    }
    self.httpRequestProtocol = @"https";
    _userAgent = @"JdCloudOCSdk 0.0.1 rds  v1";
    _serviceName = @"rds";
    _version = @"v1";
    self.contentType = @"application/json";
    return self;
}

-(id)initWithCredential:(Credential*)credential
         sdkEnvironment:(SDKEnvironment*)sdkEnvironment
{
    if(!credential)
    {
        NSException *e = [SDKArgumentNullException exceptionWithName:@"ArgumentNullException" reason:@" credential can not null" userInfo:nil];
        @throw e;
    }else{
        self.credential = credential;
    }
    
    if(!sdkEnvironment)
    {
        NSException *e = [SDKArgumentNullException exceptionWithName:@"ArgumentNullException" reason:@" sdkEnvironment can not null" userInfo:nil];
        @throw e;
    }else{
        self.sdkEnvironment = sdkEnvironment;
    }
    self.httpRequestProtocol = @"https";
    _userAgent = @"JdCloudOCSdk 0.0.1 rds  v1";
    _serviceName = @"rds";
    _version = @"v1";
    self.contentType = @"application/json";
    return self;
}

-(id)initWithCredential:(Credential*)credential
{
    if(!credential)
    {
        NSException *e = [SDKArgumentNullException exceptionWithName:@"ArgumentNullException" reason:@" credential can not null" userInfo:nil];
        @throw e;
    }else{
        self.credential = credential;
    }
    if(![GlobalConfig sdkEnvironment])
    {
        self.sdkEnvironment = [[SDKEnvironment alloc] initWithEndPoint:@"rds.jdcloud-api.com"];
    }else
    {
        self.sdkEnvironment = [GlobalConfig sdkEnvironment];
    }
    self.httpRequestProtocol = @"https";
    _userAgent = @"JdCloudOCSdk 0.0.1 rds  v1";
    _serviceName = @"rds";
    _version = @"v1";
    self.contentType = @"application/json";
    return self;
}

-(id)init{
    self.httpRequestProtocol = @"https";
    _userAgent = @"JdCloudOCSdk 0.0.1 rds  v1";
    _serviceName = @"rds";
    _version = @"v1";
    self.contentType = @"application/json";
    return self;
}


/**
describeAuditDownloadURL sync request
@param describeAuditDownloadURLRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeAuditDownloadURLResponse` the request response data model
*/
-(NSDictionary*) describeAuditDownloadURLSyncWithRequest:(RdsDescribeAuditDownloadURLRequest*) describeAuditDownloadURLRequest
{
RdsDescribeAuditDownloadURLExecutor* excutor = [[RdsDescribeAuditDownloadURLExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeAuditDownloadURLRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeAuditDownloadURLResponse* response = [[RdsDescribeAuditDownloadURLResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeAuditDownloadURLResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeAuditDownloadURLAsyncWithRequest:(RdsDescribeAuditDownloadURLRequest*) describeAuditDownloadURLRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeAuditDownloadURLResponse* _Nullable describeAuditDownloadURLResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeAuditDownloadURLExecutor* excutor = [[RdsDescribeAuditDownloadURLExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeAuditDownloadURLRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeAuditDownloadURLResponse* response = [[RdsDescribeAuditDownloadURLResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
clearBinlogs sync request
@param clearBinlogsRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `clearBinlogsResponse` the request response data model
*/
-(NSDictionary*) clearBinlogsSyncWithRequest:(RdsClearBinlogsRequest*) clearBinlogsRequest
{
RdsClearBinlogsExecutor* excutor = [[RdsClearBinlogsExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:clearBinlogsRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsClearBinlogsResponse* response = [[RdsClearBinlogsResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"clearBinlogsResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)clearBinlogsAsyncWithRequest:(RdsClearBinlogsRequest*) clearBinlogsRequest
                       completionHandler:(void(^)(int statusCode,RdsClearBinlogsResponse* _Nullable clearBinlogsResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsClearBinlogsExecutor* excutor = [[RdsClearBinlogsExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:clearBinlogsRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsClearBinlogsResponse* response = [[RdsClearBinlogsResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeInterceptResult sync request
@param describeInterceptResultRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeInterceptResultResponse` the request response data model
*/
-(NSDictionary*) describeInterceptResultSyncWithRequest:(RdsDescribeInterceptResultRequest*) describeInterceptResultRequest
{
RdsDescribeInterceptResultExecutor* excutor = [[RdsDescribeInterceptResultExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeInterceptResultRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeInterceptResultResponse* response = [[RdsDescribeInterceptResultResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeInterceptResultResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeInterceptResultAsyncWithRequest:(RdsDescribeInterceptResultRequest*) describeInterceptResultRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeInterceptResultResponse* _Nullable describeInterceptResultResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeInterceptResultExecutor* excutor = [[RdsDescribeInterceptResultExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeInterceptResultRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeInterceptResultResponse* response = [[RdsDescribeInterceptResultResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeBackupPolicy sync request
@param describeBackupPolicyRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeBackupPolicyResponse` the request response data model
*/
-(NSDictionary*) describeBackupPolicySyncWithRequest:(RdsDescribeBackupPolicyRequest*) describeBackupPolicyRequest
{
RdsDescribeBackupPolicyExecutor* excutor = [[RdsDescribeBackupPolicyExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeBackupPolicyRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeBackupPolicyResponse* response = [[RdsDescribeBackupPolicyResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeBackupPolicyResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeBackupPolicyAsyncWithRequest:(RdsDescribeBackupPolicyRequest*) describeBackupPolicyRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeBackupPolicyResponse* _Nullable describeBackupPolicyResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeBackupPolicyExecutor* excutor = [[RdsDescribeBackupPolicyExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeBackupPolicyRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeBackupPolicyResponse* response = [[RdsDescribeBackupPolicyResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeBackupDownloadURL sync request
@param describeBackupDownloadURLRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeBackupDownloadURLResponse` the request response data model
*/
-(NSDictionary*) describeBackupDownloadURLSyncWithRequest:(RdsDescribeBackupDownloadURLRequest*) describeBackupDownloadURLRequest
{
RdsDescribeBackupDownloadURLExecutor* excutor = [[RdsDescribeBackupDownloadURLExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeBackupDownloadURLRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeBackupDownloadURLResponse* response = [[RdsDescribeBackupDownloadURLResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeBackupDownloadURLResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeBackupDownloadURLAsyncWithRequest:(RdsDescribeBackupDownloadURLRequest*) describeBackupDownloadURLRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeBackupDownloadURLResponse* _Nullable describeBackupDownloadURLResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeBackupDownloadURLExecutor* excutor = [[RdsDescribeBackupDownloadURLExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeBackupDownloadURLRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeBackupDownloadURLResponse* response = [[RdsDescribeBackupDownloadURLResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
copyParameterGroup sync request
@param copyParameterGroupRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `copyParameterGroupResponse` the request response data model
*/
-(NSDictionary*) copyParameterGroupSyncWithRequest:(RdsCopyParameterGroupRequest*) copyParameterGroupRequest
{
RdsCopyParameterGroupExecutor* excutor = [[RdsCopyParameterGroupExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:copyParameterGroupRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCopyParameterGroupResponse* response = [[RdsCopyParameterGroupResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"copyParameterGroupResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)copyParameterGroupAsyncWithRequest:(RdsCopyParameterGroupRequest*) copyParameterGroupRequest
                       completionHandler:(void(^)(int statusCode,RdsCopyParameterGroupResponse* _Nullable copyParameterGroupResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsCopyParameterGroupExecutor* excutor = [[RdsCopyParameterGroupExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:copyParameterGroupRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCopyParameterGroupResponse* response = [[RdsCopyParameterGroupResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeBinlogs sync request
@param describeBinlogsRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeBinlogsResponse` the request response data model
*/
-(NSDictionary*) describeBinlogsSyncWithRequest:(RdsDescribeBinlogsRequest*) describeBinlogsRequest
{
RdsDescribeBinlogsExecutor* excutor = [[RdsDescribeBinlogsExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeBinlogsRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeBinlogsResponse* response = [[RdsDescribeBinlogsResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeBinlogsResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeBinlogsAsyncWithRequest:(RdsDescribeBinlogsRequest*) describeBinlogsRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeBinlogsResponse* _Nullable describeBinlogsResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeBinlogsExecutor* excutor = [[RdsDescribeBinlogsExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeBinlogsRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeBinlogsResponse* response = [[RdsDescribeBinlogsResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
deleteInstance sync request
@param deleteInstanceRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `deleteInstanceResponse` the request response data model
*/
-(NSDictionary*) deleteInstanceSyncWithRequest:(RdsDeleteInstanceRequest*) deleteInstanceRequest
{
RdsDeleteInstanceExecutor* excutor = [[RdsDeleteInstanceExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:deleteInstanceRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDeleteInstanceResponse* response = [[RdsDeleteInstanceResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"deleteInstanceResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)deleteInstanceAsyncWithRequest:(RdsDeleteInstanceRequest*) deleteInstanceRequest
                       completionHandler:(void(^)(int statusCode,RdsDeleteInstanceResponse* _Nullable deleteInstanceResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDeleteInstanceExecutor* excutor = [[RdsDeleteInstanceExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:deleteInstanceRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDeleteInstanceResponse* response = [[RdsDeleteInstanceResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
alterTableWithOnlineDDL sync request
@param alterTableWithOnlineDDLRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `alterTableWithOnlineDDLResponse` the request response data model
*/
-(NSDictionary*) alterTableWithOnlineDDLSyncWithRequest:(RdsAlterTableWithOnlineDDLRequest*) alterTableWithOnlineDDLRequest
{
RdsAlterTableWithOnlineDDLExecutor* excutor = [[RdsAlterTableWithOnlineDDLExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:alterTableWithOnlineDDLRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsAlterTableWithOnlineDDLResponse* response = [[RdsAlterTableWithOnlineDDLResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"alterTableWithOnlineDDLResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)alterTableWithOnlineDDLAsyncWithRequest:(RdsAlterTableWithOnlineDDLRequest*) alterTableWithOnlineDDLRequest
                       completionHandler:(void(^)(int statusCode,RdsAlterTableWithOnlineDDLResponse* _Nullable alterTableWithOnlineDDLResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsAlterTableWithOnlineDDLExecutor* excutor = [[RdsAlterTableWithOnlineDDLExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:alterTableWithOnlineDDLRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsAlterTableWithOnlineDDLResponse* response = [[RdsAlterTableWithOnlineDDLResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
createParameterGroup sync request
@param createParameterGroupRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `createParameterGroupResponse` the request response data model
*/
-(NSDictionary*) createParameterGroupSyncWithRequest:(RdsCreateParameterGroupRequest*) createParameterGroupRequest
{
RdsCreateParameterGroupExecutor* excutor = [[RdsCreateParameterGroupExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:createParameterGroupRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCreateParameterGroupResponse* response = [[RdsCreateParameterGroupResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"createParameterGroupResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)createParameterGroupAsyncWithRequest:(RdsCreateParameterGroupRequest*) createParameterGroupRequest
                       completionHandler:(void(^)(int statusCode,RdsCreateParameterGroupResponse* _Nullable createParameterGroupResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsCreateParameterGroupExecutor* excutor = [[RdsCreateParameterGroupExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:createParameterGroupRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCreateParameterGroupResponse* response = [[RdsCreateParameterGroupResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeBackups sync request
@param describeBackupsRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeBackupsResponse` the request response data model
*/
-(NSDictionary*) describeBackupsSyncWithRequest:(RdsDescribeBackupsRequest*) describeBackupsRequest
{
RdsDescribeBackupsExecutor* excutor = [[RdsDescribeBackupsExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeBackupsRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeBackupsResponse* response = [[RdsDescribeBackupsResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeBackupsResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeBackupsAsyncWithRequest:(RdsDescribeBackupsRequest*) describeBackupsRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeBackupsResponse* _Nullable describeBackupsResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeBackupsExecutor* excutor = [[RdsDescribeBackupsExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeBackupsRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeBackupsResponse* response = [[RdsDescribeBackupsResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
modifyConnectionMode sync request
@param modifyConnectionModeRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `modifyConnectionModeResponse` the request response data model
*/
-(NSDictionary*) modifyConnectionModeSyncWithRequest:(RdsModifyConnectionModeRequest*) modifyConnectionModeRequest
{
RdsModifyConnectionModeExecutor* excutor = [[RdsModifyConnectionModeExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:modifyConnectionModeRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsModifyConnectionModeResponse* response = [[RdsModifyConnectionModeResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"modifyConnectionModeResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)modifyConnectionModeAsyncWithRequest:(RdsModifyConnectionModeRequest*) modifyConnectionModeRequest
                       completionHandler:(void(^)(int statusCode,RdsModifyConnectionModeResponse* _Nullable modifyConnectionModeResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsModifyConnectionModeExecutor* excutor = [[RdsModifyConnectionModeExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:modifyConnectionModeRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsModifyConnectionModeResponse* response = [[RdsModifyConnectionModeResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
deleteAudit sync request
@param deleteAuditRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `deleteAuditResponse` the request response data model
*/
-(NSDictionary*) deleteAuditSyncWithRequest:(RdsDeleteAuditRequest*) deleteAuditRequest
{
RdsDeleteAuditExecutor* excutor = [[RdsDeleteAuditExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:deleteAuditRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDeleteAuditResponse* response = [[RdsDeleteAuditResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"deleteAuditResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)deleteAuditAsyncWithRequest:(RdsDeleteAuditRequest*) deleteAuditRequest
                       completionHandler:(void(^)(int statusCode,RdsDeleteAuditResponse* _Nullable deleteAuditResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDeleteAuditExecutor* excutor = [[RdsDeleteAuditExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:deleteAuditRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDeleteAuditResponse* response = [[RdsDeleteAuditResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
createInstanceByTime sync request
@param createInstanceByTimeRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `createInstanceByTimeResponse` the request response data model
*/
-(NSDictionary*) createInstanceByTimeSyncWithRequest:(RdsCreateInstanceByTimeRequest*) createInstanceByTimeRequest
{
RdsCreateInstanceByTimeExecutor* excutor = [[RdsCreateInstanceByTimeExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:createInstanceByTimeRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCreateInstanceByTimeResponse* response = [[RdsCreateInstanceByTimeResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"createInstanceByTimeResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)createInstanceByTimeAsyncWithRequest:(RdsCreateInstanceByTimeRequest*) createInstanceByTimeRequest
                       completionHandler:(void(^)(int statusCode,RdsCreateInstanceByTimeResponse* _Nullable createInstanceByTimeResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsCreateInstanceByTimeExecutor* excutor = [[RdsCreateInstanceByTimeExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:createInstanceByTimeRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCreateInstanceByTimeResponse* response = [[RdsCreateInstanceByTimeResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
enableInternetAccess sync request
@param enableInternetAccessRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `enableInternetAccessResponse` the request response data model
*/
-(NSDictionary*) enableInternetAccessSyncWithRequest:(RdsEnableInternetAccessRequest*) enableInternetAccessRequest
{
RdsEnableInternetAccessExecutor* excutor = [[RdsEnableInternetAccessExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:enableInternetAccessRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsEnableInternetAccessResponse* response = [[RdsEnableInternetAccessResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"enableInternetAccessResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)enableInternetAccessAsyncWithRequest:(RdsEnableInternetAccessRequest*) enableInternetAccessRequest
                       completionHandler:(void(^)(int statusCode,RdsEnableInternetAccessResponse* _Nullable enableInternetAccessResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsEnableInternetAccessExecutor* excutor = [[RdsEnableInternetAccessExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:enableInternetAccessRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsEnableInternetAccessResponse* response = [[RdsEnableInternetAccessResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeAccounts sync request
@param describeAccountsRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeAccountsResponse` the request response data model
*/
-(NSDictionary*) describeAccountsSyncWithRequest:(RdsDescribeAccountsRequest*) describeAccountsRequest
{
RdsDescribeAccountsExecutor* excutor = [[RdsDescribeAccountsExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeAccountsRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeAccountsResponse* response = [[RdsDescribeAccountsResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeAccountsResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeAccountsAsyncWithRequest:(RdsDescribeAccountsRequest*) describeAccountsRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeAccountsResponse* _Nullable describeAccountsResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeAccountsExecutor* excutor = [[RdsDescribeAccountsExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeAccountsRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeAccountsResponse* response = [[RdsDescribeAccountsResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
modifyParameterGroup sync request
@param modifyParameterGroupRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `modifyParameterGroupResponse` the request response data model
*/
-(NSDictionary*) modifyParameterGroupSyncWithRequest:(RdsModifyParameterGroupRequest*) modifyParameterGroupRequest
{
RdsModifyParameterGroupExecutor* excutor = [[RdsModifyParameterGroupExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:modifyParameterGroupRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsModifyParameterGroupResponse* response = [[RdsModifyParameterGroupResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"modifyParameterGroupResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)modifyParameterGroupAsyncWithRequest:(RdsModifyParameterGroupRequest*) modifyParameterGroupRequest
                       completionHandler:(void(^)(int statusCode,RdsModifyParameterGroupResponse* _Nullable modifyParameterGroupResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsModifyParameterGroupExecutor* excutor = [[RdsModifyParameterGroupExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:modifyParameterGroupRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsModifyParameterGroupResponse* response = [[RdsModifyParameterGroupResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeParameterModifyRecords sync request
@param describeParameterModifyRecordsRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeParameterModifyRecordsResponse` the request response data model
*/
-(NSDictionary*) describeParameterModifyRecordsSyncWithRequest:(RdsDescribeParameterModifyRecordsRequest*) describeParameterModifyRecordsRequest
{
RdsDescribeParameterModifyRecordsExecutor* excutor = [[RdsDescribeParameterModifyRecordsExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeParameterModifyRecordsRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeParameterModifyRecordsResponse* response = [[RdsDescribeParameterModifyRecordsResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeParameterModifyRecordsResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeParameterModifyRecordsAsyncWithRequest:(RdsDescribeParameterModifyRecordsRequest*) describeParameterModifyRecordsRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeParameterModifyRecordsResponse* _Nullable describeParameterModifyRecordsResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeParameterModifyRecordsExecutor* excutor = [[RdsDescribeParameterModifyRecordsExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeParameterModifyRecordsRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeParameterModifyRecordsResponse* response = [[RdsDescribeParameterModifyRecordsResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeBinlogDownloadURL sync request
@param describeBinlogDownloadURLRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeBinlogDownloadURLResponse` the request response data model
*/
-(NSDictionary*) describeBinlogDownloadURLSyncWithRequest:(RdsDescribeBinlogDownloadURLRequest*) describeBinlogDownloadURLRequest
{
RdsDescribeBinlogDownloadURLExecutor* excutor = [[RdsDescribeBinlogDownloadURLExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeBinlogDownloadURLRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeBinlogDownloadURLResponse* response = [[RdsDescribeBinlogDownloadURLResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeBinlogDownloadURLResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeBinlogDownloadURLAsyncWithRequest:(RdsDescribeBinlogDownloadURLRequest*) describeBinlogDownloadURLRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeBinlogDownloadURLResponse* _Nullable describeBinlogDownloadURLResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeBinlogDownloadURLExecutor* excutor = [[RdsDescribeBinlogDownloadURLExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeBinlogDownloadURLRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeBinlogDownloadURLResponse* response = [[RdsDescribeBinlogDownloadURLResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeAuditFiles sync request
@param describeAuditFilesRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeAuditFilesResponse` the request response data model
*/
-(NSDictionary*) describeAuditFilesSyncWithRequest:(RdsDescribeAuditFilesRequest*) describeAuditFilesRequest
{
RdsDescribeAuditFilesExecutor* excutor = [[RdsDescribeAuditFilesExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeAuditFilesRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeAuditFilesResponse* response = [[RdsDescribeAuditFilesResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeAuditFilesResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeAuditFilesAsyncWithRequest:(RdsDescribeAuditFilesRequest*) describeAuditFilesRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeAuditFilesResponse* _Nullable describeAuditFilesResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeAuditFilesExecutor* excutor = [[RdsDescribeAuditFilesExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeAuditFilesRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeAuditFilesResponse* response = [[RdsDescribeAuditFilesResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
createAccount sync request
@param createAccountRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `createAccountResponse` the request response data model
*/
-(NSDictionary*) createAccountSyncWithRequest:(RdsCreateAccountRequest*) createAccountRequest
{
RdsCreateAccountExecutor* excutor = [[RdsCreateAccountExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:createAccountRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCreateAccountResponse* response = [[RdsCreateAccountResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"createAccountResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)createAccountAsyncWithRequest:(RdsCreateAccountRequest*) createAccountRequest
                       completionHandler:(void(^)(int statusCode,RdsCreateAccountResponse* _Nullable createAccountResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsCreateAccountExecutor* excutor = [[RdsCreateAccountExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:createAccountRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCreateAccountResponse* response = [[RdsCreateAccountResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
grantPrivilege sync request
@param grantPrivilegeRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `grantPrivilegeResponse` the request response data model
*/
-(NSDictionary*) grantPrivilegeSyncWithRequest:(RdsGrantPrivilegeRequest*) grantPrivilegeRequest
{
RdsGrantPrivilegeExecutor* excutor = [[RdsGrantPrivilegeExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:grantPrivilegeRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsGrantPrivilegeResponse* response = [[RdsGrantPrivilegeResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"grantPrivilegeResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)grantPrivilegeAsyncWithRequest:(RdsGrantPrivilegeRequest*) grantPrivilegeRequest
                       completionHandler:(void(^)(int statusCode,RdsGrantPrivilegeResponse* _Nullable grantPrivilegeResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsGrantPrivilegeExecutor* excutor = [[RdsGrantPrivilegeExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:grantPrivilegeRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsGrantPrivilegeResponse* response = [[RdsGrantPrivilegeResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
revokePrivilege sync request
@param revokePrivilegeRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `revokePrivilegeResponse` the request response data model
*/
-(NSDictionary*) revokePrivilegeSyncWithRequest:(RdsRevokePrivilegeRequest*) revokePrivilegeRequest
{
RdsRevokePrivilegeExecutor* excutor = [[RdsRevokePrivilegeExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:revokePrivilegeRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsRevokePrivilegeResponse* response = [[RdsRevokePrivilegeResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"revokePrivilegeResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)revokePrivilegeAsyncWithRequest:(RdsRevokePrivilegeRequest*) revokePrivilegeRequest
                       completionHandler:(void(^)(int statusCode,RdsRevokePrivilegeResponse* _Nullable revokePrivilegeResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsRevokePrivilegeExecutor* excutor = [[RdsRevokePrivilegeExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:revokePrivilegeRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsRevokePrivilegeResponse* response = [[RdsRevokePrivilegeResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeAzs sync request
@param describeAzsRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeAzsResponse` the request response data model
*/
-(NSDictionary*) describeAzsSyncWithRequest:(RdsDescribeAzsRequest*) describeAzsRequest
{
RdsDescribeAzsExecutor* excutor = [[RdsDescribeAzsExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeAzsRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeAzsResponse* response = [[RdsDescribeAzsResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeAzsResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeAzsAsyncWithRequest:(RdsDescribeAzsRequest*) describeAzsRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeAzsResponse* _Nullable describeAzsResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeAzsExecutor* excutor = [[RdsDescribeAzsExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeAzsRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeAzsResponse* response = [[RdsDescribeAzsResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
getUploadKey sync request
@param getUploadKeyRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `getUploadKeyResponse` the request response data model
*/
-(NSDictionary*) getUploadKeySyncWithRequest:(RdsGetUploadKeyRequest*) getUploadKeyRequest
{
RdsGetUploadKeyExecutor* excutor = [[RdsGetUploadKeyExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:getUploadKeyRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsGetUploadKeyResponse* response = [[RdsGetUploadKeyResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"getUploadKeyResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)getUploadKeyAsyncWithRequest:(RdsGetUploadKeyRequest*) getUploadKeyRequest
                       completionHandler:(void(^)(int statusCode,RdsGetUploadKeyResponse* _Nullable getUploadKeyResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsGetUploadKeyExecutor* excutor = [[RdsGetUploadKeyExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:getUploadKeyRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsGetUploadKeyResponse* response = [[RdsGetUploadKeyResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
restoreDatabaseFromFile sync request
@param restoreDatabaseFromFileRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `restoreDatabaseFromFileResponse` the request response data model
*/
-(NSDictionary*) restoreDatabaseFromFileSyncWithRequest:(RdsRestoreDatabaseFromFileRequest*) restoreDatabaseFromFileRequest
{
RdsRestoreDatabaseFromFileExecutor* excutor = [[RdsRestoreDatabaseFromFileExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:restoreDatabaseFromFileRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsRestoreDatabaseFromFileResponse* response = [[RdsRestoreDatabaseFromFileResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"restoreDatabaseFromFileResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)restoreDatabaseFromFileAsyncWithRequest:(RdsRestoreDatabaseFromFileRequest*) restoreDatabaseFromFileRequest
                       completionHandler:(void(^)(int statusCode,RdsRestoreDatabaseFromFileResponse* _Nullable restoreDatabaseFromFileResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsRestoreDatabaseFromFileExecutor* excutor = [[RdsRestoreDatabaseFromFileExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:restoreDatabaseFromFileRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsRestoreDatabaseFromFileResponse* response = [[RdsRestoreDatabaseFromFileResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeInstanceAttributes sync request
@param describeInstanceAttributesRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeInstanceAttributesResponse` the request response data model
*/
-(NSDictionary*) describeInstanceAttributesSyncWithRequest:(RdsDescribeInstanceAttributesRequest*) describeInstanceAttributesRequest
{
RdsDescribeInstanceAttributesExecutor* excutor = [[RdsDescribeInstanceAttributesExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeInstanceAttributesRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeInstanceAttributesResponse* response = [[RdsDescribeInstanceAttributesResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeInstanceAttributesResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeInstanceAttributesAsyncWithRequest:(RdsDescribeInstanceAttributesRequest*) describeInstanceAttributesRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeInstanceAttributesResponse* _Nullable describeInstanceAttributesResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeInstanceAttributesExecutor* excutor = [[RdsDescribeInstanceAttributesExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeInstanceAttributesRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeInstanceAttributesResponse* response = [[RdsDescribeInstanceAttributesResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
modifyInstanceSpec sync request
@param modifyInstanceSpecRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `modifyInstanceSpecResponse` the request response data model
*/
-(NSDictionary*) modifyInstanceSpecSyncWithRequest:(RdsModifyInstanceSpecRequest*) modifyInstanceSpecRequest
{
RdsModifyInstanceSpecExecutor* excutor = [[RdsModifyInstanceSpecExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:modifyInstanceSpecRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsModifyInstanceSpecResponse* response = [[RdsModifyInstanceSpecResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"modifyInstanceSpecResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)modifyInstanceSpecAsyncWithRequest:(RdsModifyInstanceSpecRequest*) modifyInstanceSpecRequest
                       completionHandler:(void(^)(int statusCode,RdsModifyInstanceSpecResponse* _Nullable modifyInstanceSpecResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsModifyInstanceSpecExecutor* excutor = [[RdsModifyInstanceSpecExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:modifyInstanceSpecRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsModifyInstanceSpecResponse* response = [[RdsModifyInstanceSpecResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeAudit sync request
@param describeAuditRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeAuditResponse` the request response data model
*/
-(NSDictionary*) describeAuditSyncWithRequest:(RdsDescribeAuditRequest*) describeAuditRequest
{
RdsDescribeAuditExecutor* excutor = [[RdsDescribeAuditExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeAuditRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeAuditResponse* response = [[RdsDescribeAuditResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeAuditResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeAuditAsyncWithRequest:(RdsDescribeAuditRequest*) describeAuditRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeAuditResponse* _Nullable describeAuditResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeAuditExecutor* excutor = [[RdsDescribeAuditExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeAuditRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeAuditResponse* response = [[RdsDescribeAuditResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeQueryPerformance sync request
@param describeQueryPerformanceRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeQueryPerformanceResponse` the request response data model
*/
-(NSDictionary*) describeQueryPerformanceSyncWithRequest:(RdsDescribeQueryPerformanceRequest*) describeQueryPerformanceRequest
{
RdsDescribeQueryPerformanceExecutor* excutor = [[RdsDescribeQueryPerformanceExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeQueryPerformanceRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeQueryPerformanceResponse* response = [[RdsDescribeQueryPerformanceResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeQueryPerformanceResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeQueryPerformanceAsyncWithRequest:(RdsDescribeQueryPerformanceRequest*) describeQueryPerformanceRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeQueryPerformanceResponse* _Nullable describeQueryPerformanceResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeQueryPerformanceExecutor* excutor = [[RdsDescribeQueryPerformanceExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeQueryPerformanceRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeQueryPerformanceResponse* response = [[RdsDescribeQueryPerformanceResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeParameterGroupAttachedInstances sync request
@param describeParameterGroupAttachedInstancesRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeParameterGroupAttachedInstancesResponse` the request response data model
*/
-(NSDictionary*) describeParameterGroupAttachedInstancesSyncWithRequest:(RdsDescribeParameterGroupAttachedInstancesRequest*) describeParameterGroupAttachedInstancesRequest
{
RdsDescribeParameterGroupAttachedInstancesExecutor* excutor = [[RdsDescribeParameterGroupAttachedInstancesExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeParameterGroupAttachedInstancesRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeParameterGroupAttachedInstancesResponse* response = [[RdsDescribeParameterGroupAttachedInstancesResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeParameterGroupAttachedInstancesResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeParameterGroupAttachedInstancesAsyncWithRequest:(RdsDescribeParameterGroupAttachedInstancesRequest*) describeParameterGroupAttachedInstancesRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeParameterGroupAttachedInstancesResponse* _Nullable describeParameterGroupAttachedInstancesResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeParameterGroupAttachedInstancesExecutor* excutor = [[RdsDescribeParameterGroupAttachedInstancesExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeParameterGroupAttachedInstancesRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeParameterGroupAttachedInstancesResponse* response = [[RdsDescribeParameterGroupAttachedInstancesResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeTde sync request
@param describeTdeRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeTdeResponse` the request response data model
*/
-(NSDictionary*) describeTdeSyncWithRequest:(RdsDescribeTdeRequest*) describeTdeRequest
{
RdsDescribeTdeExecutor* excutor = [[RdsDescribeTdeExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeTdeRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeTdeResponse* response = [[RdsDescribeTdeResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeTdeResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeTdeAsyncWithRequest:(RdsDescribeTdeRequest*) describeTdeRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeTdeResponse* _Nullable describeTdeResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeTdeExecutor* excutor = [[RdsDescribeTdeExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeTdeRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeTdeResponse* response = [[RdsDescribeTdeResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
createBackupSynchronicity sync request
@param createBackupSynchronicityRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `createBackupSynchronicityResponse` the request response data model
*/
-(NSDictionary*) createBackupSynchronicitySyncWithRequest:(RdsCreateBackupSynchronicityRequest*) createBackupSynchronicityRequest
{
RdsCreateBackupSynchronicityExecutor* excutor = [[RdsCreateBackupSynchronicityExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:createBackupSynchronicityRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCreateBackupSynchronicityResponse* response = [[RdsCreateBackupSynchronicityResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"createBackupSynchronicityResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)createBackupSynchronicityAsyncWithRequest:(RdsCreateBackupSynchronicityRequest*) createBackupSynchronicityRequest
                       completionHandler:(void(^)(int statusCode,RdsCreateBackupSynchronicityResponse* _Nullable createBackupSynchronicityResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsCreateBackupSynchronicityExecutor* excutor = [[RdsCreateBackupSynchronicityExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:createBackupSynchronicityRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCreateBackupSynchronicityResponse* response = [[RdsCreateBackupSynchronicityResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
deleteImportFile sync request
@param deleteImportFileRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `deleteImportFileResponse` the request response data model
*/
-(NSDictionary*) deleteImportFileSyncWithRequest:(RdsDeleteImportFileRequest*) deleteImportFileRequest
{
RdsDeleteImportFileExecutor* excutor = [[RdsDeleteImportFileExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:deleteImportFileRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDeleteImportFileResponse* response = [[RdsDeleteImportFileResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"deleteImportFileResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)deleteImportFileAsyncWithRequest:(RdsDeleteImportFileRequest*) deleteImportFileRequest
                       completionHandler:(void(^)(int statusCode,RdsDeleteImportFileResponse* _Nullable deleteImportFileResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDeleteImportFileExecutor* excutor = [[RdsDeleteImportFileExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:deleteImportFileRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDeleteImportFileResponse* response = [[RdsDeleteImportFileResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
deleteBackupSynchronicity sync request
@param deleteBackupSynchronicityRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `deleteBackupSynchronicityResponse` the request response data model
*/
-(NSDictionary*) deleteBackupSynchronicitySyncWithRequest:(RdsDeleteBackupSynchronicityRequest*) deleteBackupSynchronicityRequest
{
RdsDeleteBackupSynchronicityExecutor* excutor = [[RdsDeleteBackupSynchronicityExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:deleteBackupSynchronicityRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDeleteBackupSynchronicityResponse* response = [[RdsDeleteBackupSynchronicityResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"deleteBackupSynchronicityResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)deleteBackupSynchronicityAsyncWithRequest:(RdsDeleteBackupSynchronicityRequest*) deleteBackupSynchronicityRequest
                       completionHandler:(void(^)(int statusCode,RdsDeleteBackupSynchronicityResponse* _Nullable deleteBackupSynchronicityResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDeleteBackupSynchronicityExecutor* excutor = [[RdsDeleteBackupSynchronicityExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:deleteBackupSynchronicityRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDeleteBackupSynchronicityResponse* response = [[RdsDeleteBackupSynchronicityResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeSlowLogAttributes sync request
@param describeSlowLogAttributesRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeSlowLogAttributesResponse` the request response data model
*/
-(NSDictionary*) describeSlowLogAttributesSyncWithRequest:(RdsDescribeSlowLogAttributesRequest*) describeSlowLogAttributesRequest
{
RdsDescribeSlowLogAttributesExecutor* excutor = [[RdsDescribeSlowLogAttributesExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeSlowLogAttributesRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeSlowLogAttributesResponse* response = [[RdsDescribeSlowLogAttributesResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeSlowLogAttributesResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeSlowLogAttributesAsyncWithRequest:(RdsDescribeSlowLogAttributesRequest*) describeSlowLogAttributesRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeSlowLogAttributesResponse* _Nullable describeSlowLogAttributesResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeSlowLogAttributesExecutor* excutor = [[RdsDescribeSlowLogAttributesExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeSlowLogAttributesRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeSlowLogAttributesResponse* response = [[RdsDescribeSlowLogAttributesResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
modifyParameterGroupAttribute sync request
@param modifyParameterGroupAttributeRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `modifyParameterGroupAttributeResponse` the request response data model
*/
-(NSDictionary*) modifyParameterGroupAttributeSyncWithRequest:(RdsModifyParameterGroupAttributeRequest*) modifyParameterGroupAttributeRequest
{
RdsModifyParameterGroupAttributeExecutor* excutor = [[RdsModifyParameterGroupAttributeExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:modifyParameterGroupAttributeRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsModifyParameterGroupAttributeResponse* response = [[RdsModifyParameterGroupAttributeResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"modifyParameterGroupAttributeResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)modifyParameterGroupAttributeAsyncWithRequest:(RdsModifyParameterGroupAttributeRequest*) modifyParameterGroupAttributeRequest
                       completionHandler:(void(^)(int statusCode,RdsModifyParameterGroupAttributeResponse* _Nullable modifyParameterGroupAttributeResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsModifyParameterGroupAttributeExecutor* excutor = [[RdsModifyParameterGroupAttributeExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:modifyParameterGroupAttributeRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsModifyParameterGroupAttributeResponse* response = [[RdsModifyParameterGroupAttributeResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
modifyAudit sync request
@param modifyAuditRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `modifyAuditResponse` the request response data model
*/
-(NSDictionary*) modifyAuditSyncWithRequest:(RdsModifyAuditRequest*) modifyAuditRequest
{
RdsModifyAuditExecutor* excutor = [[RdsModifyAuditExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:modifyAuditRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsModifyAuditResponse* response = [[RdsModifyAuditResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"modifyAuditResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)modifyAuditAsyncWithRequest:(RdsModifyAuditRequest*) modifyAuditRequest
                       completionHandler:(void(^)(int statusCode,RdsModifyAuditResponse* _Nullable modifyAuditResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsModifyAuditExecutor* excutor = [[RdsModifyAuditExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:modifyAuditRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsModifyAuditResponse* response = [[RdsModifyAuditResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeAuditResult sync request
@param describeAuditResultRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeAuditResultResponse` the request response data model
*/
-(NSDictionary*) describeAuditResultSyncWithRequest:(RdsDescribeAuditResultRequest*) describeAuditResultRequest
{
RdsDescribeAuditResultExecutor* excutor = [[RdsDescribeAuditResultExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeAuditResultRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeAuditResultResponse* response = [[RdsDescribeAuditResultResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeAuditResultResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeAuditResultAsyncWithRequest:(RdsDescribeAuditResultRequest*) describeAuditResultRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeAuditResultResponse* _Nullable describeAuditResultResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeAuditResultExecutor* excutor = [[RdsDescribeAuditResultExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeAuditResultRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeAuditResultResponse* response = [[RdsDescribeAuditResultResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeLatestRestoreTime sync request
@param describeLatestRestoreTimeRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeLatestRestoreTimeResponse` the request response data model
*/
-(NSDictionary*) describeLatestRestoreTimeSyncWithRequest:(RdsDescribeLatestRestoreTimeRequest*) describeLatestRestoreTimeRequest
{
RdsDescribeLatestRestoreTimeExecutor* excutor = [[RdsDescribeLatestRestoreTimeExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeLatestRestoreTimeRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeLatestRestoreTimeResponse* response = [[RdsDescribeLatestRestoreTimeResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeLatestRestoreTimeResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeLatestRestoreTimeAsyncWithRequest:(RdsDescribeLatestRestoreTimeRequest*) describeLatestRestoreTimeRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeLatestRestoreTimeResponse* _Nullable describeLatestRestoreTimeResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeLatestRestoreTimeExecutor* excutor = [[RdsDescribeLatestRestoreTimeExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeLatestRestoreTimeRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeLatestRestoreTimeResponse* response = [[RdsDescribeLatestRestoreTimeResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeErrorLogs sync request
@param describeErrorLogsRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeErrorLogsResponse` the request response data model
*/
-(NSDictionary*) describeErrorLogsSyncWithRequest:(RdsDescribeErrorLogsRequest*) describeErrorLogsRequest
{
RdsDescribeErrorLogsExecutor* excutor = [[RdsDescribeErrorLogsExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeErrorLogsRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeErrorLogsResponse* response = [[RdsDescribeErrorLogsResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeErrorLogsResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeErrorLogsAsyncWithRequest:(RdsDescribeErrorLogsRequest*) describeErrorLogsRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeErrorLogsResponse* _Nullable describeErrorLogsResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeErrorLogsExecutor* excutor = [[RdsDescribeErrorLogsExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeErrorLogsRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeErrorLogsResponse* response = [[RdsDescribeErrorLogsResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
enableTde sync request
@param enableTdeRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `enableTdeResponse` the request response data model
*/
-(NSDictionary*) enableTdeSyncWithRequest:(RdsEnableTdeRequest*) enableTdeRequest
{
RdsEnableTdeExecutor* excutor = [[RdsEnableTdeExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:enableTdeRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsEnableTdeResponse* response = [[RdsEnableTdeResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"enableTdeResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)enableTdeAsyncWithRequest:(RdsEnableTdeRequest*) enableTdeRequest
                       completionHandler:(void(^)(int statusCode,RdsEnableTdeResponse* _Nullable enableTdeResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsEnableTdeExecutor* excutor = [[RdsEnableTdeExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:enableTdeRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsEnableTdeResponse* response = [[RdsEnableTdeResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeSlowLogs sync request
@param describeSlowLogsRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeSlowLogsResponse` the request response data model
*/
-(NSDictionary*) describeSlowLogsSyncWithRequest:(RdsDescribeSlowLogsRequest*) describeSlowLogsRequest
{
RdsDescribeSlowLogsExecutor* excutor = [[RdsDescribeSlowLogsExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeSlowLogsRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeSlowLogsResponse* response = [[RdsDescribeSlowLogsResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeSlowLogsResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeSlowLogsAsyncWithRequest:(RdsDescribeSlowLogsRequest*) describeSlowLogsRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeSlowLogsResponse* _Nullable describeSlowLogsResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeSlowLogsExecutor* excutor = [[RdsDescribeSlowLogsExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeSlowLogsRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeSlowLogsResponse* response = [[RdsDescribeSlowLogsResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
deleteDatabase sync request
@param deleteDatabaseRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `deleteDatabaseResponse` the request response data model
*/
-(NSDictionary*) deleteDatabaseSyncWithRequest:(RdsDeleteDatabaseRequest*) deleteDatabaseRequest
{
RdsDeleteDatabaseExecutor* excutor = [[RdsDeleteDatabaseExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:deleteDatabaseRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDeleteDatabaseResponse* response = [[RdsDeleteDatabaseResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"deleteDatabaseResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)deleteDatabaseAsyncWithRequest:(RdsDeleteDatabaseRequest*) deleteDatabaseRequest
                       completionHandler:(void(^)(int statusCode,RdsDeleteDatabaseResponse* _Nullable deleteDatabaseResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDeleteDatabaseExecutor* excutor = [[RdsDeleteDatabaseExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:deleteDatabaseRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDeleteDatabaseResponse* response = [[RdsDeleteDatabaseResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeActiveQueryPerformance sync request
@param describeActiveQueryPerformanceRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeActiveQueryPerformanceResponse` the request response data model
*/
-(NSDictionary*) describeActiveQueryPerformanceSyncWithRequest:(RdsDescribeActiveQueryPerformanceRequest*) describeActiveQueryPerformanceRequest
{
RdsDescribeActiveQueryPerformanceExecutor* excutor = [[RdsDescribeActiveQueryPerformanceExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeActiveQueryPerformanceRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeActiveQueryPerformanceResponse* response = [[RdsDescribeActiveQueryPerformanceResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeActiveQueryPerformanceResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeActiveQueryPerformanceAsyncWithRequest:(RdsDescribeActiveQueryPerformanceRequest*) describeActiveQueryPerformanceRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeActiveQueryPerformanceResponse* _Nullable describeActiveQueryPerformanceResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeActiveQueryPerformanceExecutor* excutor = [[RdsDescribeActiveQueryPerformanceExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeActiveQueryPerformanceRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeActiveQueryPerformanceResponse* response = [[RdsDescribeActiveQueryPerformanceResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
createInstanceFromBackup sync request
@param createInstanceFromBackupRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `createInstanceFromBackupResponse` the request response data model
*/
-(NSDictionary*) createInstanceFromBackupSyncWithRequest:(RdsCreateInstanceFromBackupRequest*) createInstanceFromBackupRequest
{
RdsCreateInstanceFromBackupExecutor* excutor = [[RdsCreateInstanceFromBackupExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:createInstanceFromBackupRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCreateInstanceFromBackupResponse* response = [[RdsCreateInstanceFromBackupResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"createInstanceFromBackupResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)createInstanceFromBackupAsyncWithRequest:(RdsCreateInstanceFromBackupRequest*) createInstanceFromBackupRequest
                       completionHandler:(void(^)(int statusCode,RdsCreateInstanceFromBackupResponse* _Nullable createInstanceFromBackupResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsCreateInstanceFromBackupExecutor* excutor = [[RdsCreateInstanceFromBackupExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:createInstanceFromBackupRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCreateInstanceFromBackupResponse* response = [[RdsCreateInstanceFromBackupResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
createSuperAccount sync request
@param createSuperAccountRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `createSuperAccountResponse` the request response data model
*/
-(NSDictionary*) createSuperAccountSyncWithRequest:(RdsCreateSuperAccountRequest*) createSuperAccountRequest
{
RdsCreateSuperAccountExecutor* excutor = [[RdsCreateSuperAccountExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:createSuperAccountRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCreateSuperAccountResponse* response = [[RdsCreateSuperAccountResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"createSuperAccountResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)createSuperAccountAsyncWithRequest:(RdsCreateSuperAccountRequest*) createSuperAccountRequest
                       completionHandler:(void(^)(int statusCode,RdsCreateSuperAccountResponse* _Nullable createSuperAccountResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsCreateSuperAccountExecutor* excutor = [[RdsCreateSuperAccountExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:createSuperAccountRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCreateSuperAccountResponse* response = [[RdsCreateSuperAccountResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeParameters sync request
@param describeParametersRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeParametersResponse` the request response data model
*/
-(NSDictionary*) describeParametersSyncWithRequest:(RdsDescribeParametersRequest*) describeParametersRequest
{
RdsDescribeParametersExecutor* excutor = [[RdsDescribeParametersExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeParametersRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeParametersResponse* response = [[RdsDescribeParametersResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeParametersResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeParametersAsyncWithRequest:(RdsDescribeParametersRequest*) describeParametersRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeParametersResponse* _Nullable describeParametersResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeParametersExecutor* excutor = [[RdsDescribeParametersExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeParametersRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeParametersResponse* response = [[RdsDescribeParametersResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
modifyParameters sync request
@param modifyParametersRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `modifyParametersResponse` the request response data model
*/
-(NSDictionary*) modifyParametersSyncWithRequest:(RdsModifyParametersRequest*) modifyParametersRequest
{
RdsModifyParametersExecutor* excutor = [[RdsModifyParametersExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:modifyParametersRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsModifyParametersResponse* response = [[RdsModifyParametersResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"modifyParametersResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)modifyParametersAsyncWithRequest:(RdsModifyParametersRequest*) modifyParametersRequest
                       completionHandler:(void(^)(int statusCode,RdsModifyParametersResponse* _Nullable modifyParametersResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsModifyParametersExecutor* excutor = [[RdsModifyParametersExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:modifyParametersRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsModifyParametersResponse* response = [[RdsModifyParametersResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
modifyWhiteList sync request
@param modifyWhiteListRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `modifyWhiteListResponse` the request response data model
*/
-(NSDictionary*) modifyWhiteListSyncWithRequest:(RdsModifyWhiteListRequest*) modifyWhiteListRequest
{
RdsModifyWhiteListExecutor* excutor = [[RdsModifyWhiteListExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:modifyWhiteListRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsModifyWhiteListResponse* response = [[RdsModifyWhiteListResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"modifyWhiteListResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)modifyWhiteListAsyncWithRequest:(RdsModifyWhiteListRequest*) modifyWhiteListRequest
                       completionHandler:(void(^)(int statusCode,RdsModifyWhiteListResponse* _Nullable modifyWhiteListResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsModifyWhiteListExecutor* excutor = [[RdsModifyWhiteListExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:modifyWhiteListRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsModifyWhiteListResponse* response = [[RdsModifyWhiteListResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
updateLogDownloadURLInternal sync request
@param updateLogDownloadURLInternalRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `updateLogDownloadURLInternalResponse` the request response data model
*/
-(NSDictionary*) updateLogDownloadURLInternalSyncWithRequest:(RdsUpdateLogDownloadURLInternalRequest*) updateLogDownloadURLInternalRequest
{
RdsUpdateLogDownloadURLInternalExecutor* excutor = [[RdsUpdateLogDownloadURLInternalExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:updateLogDownloadURLInternalRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsUpdateLogDownloadURLInternalResponse* response = [[RdsUpdateLogDownloadURLInternalResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"updateLogDownloadURLInternalResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)updateLogDownloadURLInternalAsyncWithRequest:(RdsUpdateLogDownloadURLInternalRequest*) updateLogDownloadURLInternalRequest
                       completionHandler:(void(^)(int statusCode,RdsUpdateLogDownloadURLInternalResponse* _Nullable updateLogDownloadURLInternalResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsUpdateLogDownloadURLInternalExecutor* excutor = [[RdsUpdateLogDownloadURLInternalExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:updateLogDownloadURLInternalRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsUpdateLogDownloadURLInternalResponse* response = [[RdsUpdateLogDownloadURLInternalResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeLogDownloadURL sync request
@param describeLogDownloadURLRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeLogDownloadURLResponse` the request response data model
*/
-(NSDictionary*) describeLogDownloadURLSyncWithRequest:(RdsDescribeLogDownloadURLRequest*) describeLogDownloadURLRequest
{
RdsDescribeLogDownloadURLExecutor* excutor = [[RdsDescribeLogDownloadURLExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeLogDownloadURLRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeLogDownloadURLResponse* response = [[RdsDescribeLogDownloadURLResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeLogDownloadURLResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeLogDownloadURLAsyncWithRequest:(RdsDescribeLogDownloadURLRequest*) describeLogDownloadURLRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeLogDownloadURLResponse* _Nullable describeLogDownloadURLResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeLogDownloadURLExecutor* excutor = [[RdsDescribeLogDownloadURLExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeLogDownloadURLRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeLogDownloadURLResponse* response = [[RdsDescribeLogDownloadURLResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
resetPassword sync request
@param resetPasswordRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `resetPasswordResponse` the request response data model
*/
-(NSDictionary*) resetPasswordSyncWithRequest:(RdsResetPasswordRequest*) resetPasswordRequest
{
RdsResetPasswordExecutor* excutor = [[RdsResetPasswordExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:resetPasswordRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsResetPasswordResponse* response = [[RdsResetPasswordResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"resetPasswordResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)resetPasswordAsyncWithRequest:(RdsResetPasswordRequest*) resetPasswordRequest
                       completionHandler:(void(^)(int statusCode,RdsResetPasswordResponse* _Nullable resetPasswordResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsResetPasswordExecutor* excutor = [[RdsResetPasswordExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:resetPasswordRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsResetPasswordResponse* response = [[RdsResetPasswordResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
disableIntercept sync request
@param disableInterceptRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `disableInterceptResponse` the request response data model
*/
-(NSDictionary*) disableInterceptSyncWithRequest:(RdsDisableInterceptRequest*) disableInterceptRequest
{
RdsDisableInterceptExecutor* excutor = [[RdsDisableInterceptExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:disableInterceptRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDisableInterceptResponse* response = [[RdsDisableInterceptResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"disableInterceptResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)disableInterceptAsyncWithRequest:(RdsDisableInterceptRequest*) disableInterceptRequest
                       completionHandler:(void(^)(int statusCode,RdsDisableInterceptResponse* _Nullable disableInterceptResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDisableInterceptExecutor* excutor = [[RdsDisableInterceptExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:disableInterceptRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDisableInterceptResponse* response = [[RdsDisableInterceptResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
exchangeInstanceDns sync request
@param exchangeInstanceDnsRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `exchangeInstanceDnsResponse` the request response data model
*/
-(NSDictionary*) exchangeInstanceDnsSyncWithRequest:(RdsExchangeInstanceDnsRequest*) exchangeInstanceDnsRequest
{
RdsExchangeInstanceDnsExecutor* excutor = [[RdsExchangeInstanceDnsExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:exchangeInstanceDnsRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsExchangeInstanceDnsResponse* response = [[RdsExchangeInstanceDnsResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"exchangeInstanceDnsResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)exchangeInstanceDnsAsyncWithRequest:(RdsExchangeInstanceDnsRequest*) exchangeInstanceDnsRequest
                       completionHandler:(void(^)(int statusCode,RdsExchangeInstanceDnsResponse* _Nullable exchangeInstanceDnsResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsExchangeInstanceDnsExecutor* excutor = [[RdsExchangeInstanceDnsExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:exchangeInstanceDnsRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsExchangeInstanceDnsResponse* response = [[RdsExchangeInstanceDnsResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
disableAudit sync request
@param disableAuditRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `disableAuditResponse` the request response data model
*/
-(NSDictionary*) disableAuditSyncWithRequest:(RdsDisableAuditRequest*) disableAuditRequest
{
RdsDisableAuditExecutor* excutor = [[RdsDisableAuditExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:disableAuditRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDisableAuditResponse* response = [[RdsDisableAuditResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"disableAuditResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)disableAuditAsyncWithRequest:(RdsDisableAuditRequest*) disableAuditRequest
                       completionHandler:(void(^)(int statusCode,RdsDisableAuditResponse* _Nullable disableAuditResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDisableAuditExecutor* excutor = [[RdsDisableAuditExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:disableAuditRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDisableAuditResponse* response = [[RdsDisableAuditResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
createDatabase sync request
@param createDatabaseRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `createDatabaseResponse` the request response data model
*/
-(NSDictionary*) createDatabaseSyncWithRequest:(RdsCreateDatabaseRequest*) createDatabaseRequest
{
RdsCreateDatabaseExecutor* excutor = [[RdsCreateDatabaseExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:createDatabaseRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCreateDatabaseResponse* response = [[RdsCreateDatabaseResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"createDatabaseResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)createDatabaseAsyncWithRequest:(RdsCreateDatabaseRequest*) createDatabaseRequest
                       completionHandler:(void(^)(int statusCode,RdsCreateDatabaseResponse* _Nullable createDatabaseResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsCreateDatabaseExecutor* excutor = [[RdsCreateDatabaseExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:createDatabaseRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCreateDatabaseResponse* response = [[RdsCreateDatabaseResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
enableIntercept sync request
@param enableInterceptRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `enableInterceptResponse` the request response data model
*/
-(NSDictionary*) enableInterceptSyncWithRequest:(RdsEnableInterceptRequest*) enableInterceptRequest
{
RdsEnableInterceptExecutor* excutor = [[RdsEnableInterceptExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:enableInterceptRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsEnableInterceptResponse* response = [[RdsEnableInterceptResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"enableInterceptResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)enableInterceptAsyncWithRequest:(RdsEnableInterceptRequest*) enableInterceptRequest
                       completionHandler:(void(^)(int statusCode,RdsEnableInterceptResponse* _Nullable enableInterceptResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsEnableInterceptExecutor* excutor = [[RdsEnableInterceptExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:enableInterceptRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsEnableInterceptResponse* response = [[RdsEnableInterceptResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
setImportFileShared sync request
@param setImportFileSharedRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `setImportFileSharedResponse` the request response data model
*/
-(NSDictionary*) setImportFileSharedSyncWithRequest:(RdsSetImportFileSharedRequest*) setImportFileSharedRequest
{
RdsSetImportFileSharedExecutor* excutor = [[RdsSetImportFileSharedExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:setImportFileSharedRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsSetImportFileSharedResponse* response = [[RdsSetImportFileSharedResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"setImportFileSharedResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)setImportFileSharedAsyncWithRequest:(RdsSetImportFileSharedRequest*) setImportFileSharedRequest
                       completionHandler:(void(^)(int statusCode,RdsSetImportFileSharedResponse* _Nullable setImportFileSharedResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsSetImportFileSharedExecutor* excutor = [[RdsSetImportFileSharedExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:setImportFileSharedRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsSetImportFileSharedResponse* response = [[RdsSetImportFileSharedResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
rebootInstance sync request
@param rebootInstanceRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `rebootInstanceResponse` the request response data model
*/
-(NSDictionary*) rebootInstanceSyncWithRequest:(RdsRebootInstanceRequest*) rebootInstanceRequest
{
RdsRebootInstanceExecutor* excutor = [[RdsRebootInstanceExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:rebootInstanceRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsRebootInstanceResponse* response = [[RdsRebootInstanceResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"rebootInstanceResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)rebootInstanceAsyncWithRequest:(RdsRebootInstanceRequest*) rebootInstanceRequest
                       completionHandler:(void(^)(int statusCode,RdsRebootInstanceResponse* _Nullable rebootInstanceResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsRebootInstanceExecutor* excutor = [[RdsRebootInstanceExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:rebootInstanceRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsRebootInstanceResponse* response = [[RdsRebootInstanceResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeDatabases sync request
@param describeDatabasesRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeDatabasesResponse` the request response data model
*/
-(NSDictionary*) describeDatabasesSyncWithRequest:(RdsDescribeDatabasesRequest*) describeDatabasesRequest
{
RdsDescribeDatabasesExecutor* excutor = [[RdsDescribeDatabasesExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeDatabasesRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeDatabasesResponse* response = [[RdsDescribeDatabasesResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeDatabasesResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeDatabasesAsyncWithRequest:(RdsDescribeDatabasesRequest*) describeDatabasesRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeDatabasesResponse* _Nullable describeDatabasesResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeDatabasesExecutor* excutor = [[RdsDescribeDatabasesExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeDatabasesRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeDatabasesResponse* response = [[RdsDescribeDatabasesResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeIndexPerformance sync request
@param describeIndexPerformanceRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeIndexPerformanceResponse` the request response data model
*/
-(NSDictionary*) describeIndexPerformanceSyncWithRequest:(RdsDescribeIndexPerformanceRequest*) describeIndexPerformanceRequest
{
RdsDescribeIndexPerformanceExecutor* excutor = [[RdsDescribeIndexPerformanceExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeIndexPerformanceRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeIndexPerformanceResponse* response = [[RdsDescribeIndexPerformanceResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeIndexPerformanceResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeIndexPerformanceAsyncWithRequest:(RdsDescribeIndexPerformanceRequest*) describeIndexPerformanceRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeIndexPerformanceResponse* _Nullable describeIndexPerformanceResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeIndexPerformanceExecutor* excutor = [[RdsDescribeIndexPerformanceExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeIndexPerformanceRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeIndexPerformanceResponse* response = [[RdsDescribeIndexPerformanceResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
createAudit sync request
@param createAuditRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `createAuditResponse` the request response data model
*/
-(NSDictionary*) createAuditSyncWithRequest:(RdsCreateAuditRequest*) createAuditRequest
{
RdsCreateAuditExecutor* excutor = [[RdsCreateAuditExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:createAuditRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCreateAuditResponse* response = [[RdsCreateAuditResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"createAuditResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)createAuditAsyncWithRequest:(RdsCreateAuditRequest*) createAuditRequest
                       completionHandler:(void(^)(int statusCode,RdsCreateAuditResponse* _Nullable createAuditResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsCreateAuditExecutor* excutor = [[RdsCreateAuditExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:createAuditRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCreateAuditResponse* response = [[RdsCreateAuditResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
modifyInstanceName sync request
@param modifyInstanceNameRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `modifyInstanceNameResponse` the request response data model
*/
-(NSDictionary*) modifyInstanceNameSyncWithRequest:(RdsModifyInstanceNameRequest*) modifyInstanceNameRequest
{
RdsModifyInstanceNameExecutor* excutor = [[RdsModifyInstanceNameExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:modifyInstanceNameRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsModifyInstanceNameResponse* response = [[RdsModifyInstanceNameResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"modifyInstanceNameResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)modifyInstanceNameAsyncWithRequest:(RdsModifyInstanceNameRequest*) modifyInstanceNameRequest
                       completionHandler:(void(^)(int statusCode,RdsModifyInstanceNameResponse* _Nullable modifyInstanceNameResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsModifyInstanceNameExecutor* excutor = [[RdsModifyInstanceNameExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:modifyInstanceNameRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsModifyInstanceNameResponse* response = [[RdsModifyInstanceNameResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
enableAudit sync request
@param enableAuditRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `enableAuditResponse` the request response data model
*/
-(NSDictionary*) enableAuditSyncWithRequest:(RdsEnableAuditRequest*) enableAuditRequest
{
RdsEnableAuditExecutor* excutor = [[RdsEnableAuditExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:enableAuditRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsEnableAuditResponse* response = [[RdsEnableAuditResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"enableAuditResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)enableAuditAsyncWithRequest:(RdsEnableAuditRequest*) enableAuditRequest
                       completionHandler:(void(^)(int statusCode,RdsEnableAuditResponse* _Nullable enableAuditResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsEnableAuditExecutor* excutor = [[RdsEnableAuditExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:enableAuditRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsEnableAuditResponse* response = [[RdsEnableAuditResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
deleteParameterGroup sync request
@param deleteParameterGroupRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `deleteParameterGroupResponse` the request response data model
*/
-(NSDictionary*) deleteParameterGroupSyncWithRequest:(RdsDeleteParameterGroupRequest*) deleteParameterGroupRequest
{
RdsDeleteParameterGroupExecutor* excutor = [[RdsDeleteParameterGroupExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:deleteParameterGroupRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDeleteParameterGroupResponse* response = [[RdsDeleteParameterGroupResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"deleteParameterGroupResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)deleteParameterGroupAsyncWithRequest:(RdsDeleteParameterGroupRequest*) deleteParameterGroupRequest
                       completionHandler:(void(^)(int statusCode,RdsDeleteParameterGroupResponse* _Nullable deleteParameterGroupResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDeleteParameterGroupExecutor* excutor = [[RdsDeleteParameterGroupExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:deleteParameterGroupRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDeleteParameterGroupResponse* response = [[RdsDeleteParameterGroupResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
createBackup sync request
@param createBackupRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `createBackupResponse` the request response data model
*/
-(NSDictionary*) createBackupSyncWithRequest:(RdsCreateBackupRequest*) createBackupRequest
{
RdsCreateBackupExecutor* excutor = [[RdsCreateBackupExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:createBackupRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCreateBackupResponse* response = [[RdsCreateBackupResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"createBackupResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)createBackupAsyncWithRequest:(RdsCreateBackupRequest*) createBackupRequest
                       completionHandler:(void(^)(int statusCode,RdsCreateBackupResponse* _Nullable createBackupResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsCreateBackupExecutor* excutor = [[RdsCreateBackupExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:createBackupRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCreateBackupResponse* response = [[RdsCreateBackupResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
createInstance sync request
@param createInstanceRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `createInstanceResponse` the request response data model
*/
-(NSDictionary*) createInstanceSyncWithRequest:(RdsCreateInstanceRequest*) createInstanceRequest
{
RdsCreateInstanceExecutor* excutor = [[RdsCreateInstanceExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:createInstanceRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCreateInstanceResponse* response = [[RdsCreateInstanceResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"createInstanceResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)createInstanceAsyncWithRequest:(RdsCreateInstanceRequest*) createInstanceRequest
                       completionHandler:(void(^)(int statusCode,RdsCreateInstanceResponse* _Nullable createInstanceResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsCreateInstanceExecutor* excutor = [[RdsCreateInstanceExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:createInstanceRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCreateInstanceResponse* response = [[RdsCreateInstanceResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
modifyBackupPolicy sync request
@param modifyBackupPolicyRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `modifyBackupPolicyResponse` the request response data model
*/
-(NSDictionary*) modifyBackupPolicySyncWithRequest:(RdsModifyBackupPolicyRequest*) modifyBackupPolicyRequest
{
RdsModifyBackupPolicyExecutor* excutor = [[RdsModifyBackupPolicyExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:modifyBackupPolicyRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsModifyBackupPolicyResponse* response = [[RdsModifyBackupPolicyResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"modifyBackupPolicyResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)modifyBackupPolicyAsyncWithRequest:(RdsModifyBackupPolicyRequest*) modifyBackupPolicyRequest
                       completionHandler:(void(^)(int statusCode,RdsModifyBackupPolicyResponse* _Nullable modifyBackupPolicyResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsModifyBackupPolicyExecutor* excutor = [[RdsModifyBackupPolicyExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:modifyBackupPolicyRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsModifyBackupPolicyResponse* response = [[RdsModifyBackupPolicyResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
restoreInstance sync request
@param restoreInstanceRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `restoreInstanceResponse` the request response data model
*/
-(NSDictionary*) restoreInstanceSyncWithRequest:(RdsRestoreInstanceRequest*) restoreInstanceRequest
{
RdsRestoreInstanceExecutor* excutor = [[RdsRestoreInstanceExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:restoreInstanceRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsRestoreInstanceResponse* response = [[RdsRestoreInstanceResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"restoreInstanceResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)restoreInstanceAsyncWithRequest:(RdsRestoreInstanceRequest*) restoreInstanceRequest
                       completionHandler:(void(^)(int statusCode,RdsRestoreInstanceResponse* _Nullable restoreInstanceResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsRestoreInstanceExecutor* excutor = [[RdsRestoreInstanceExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:restoreInstanceRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsRestoreInstanceResponse* response = [[RdsRestoreInstanceResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeLogs sync request
@param describeLogsRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeLogsResponse` the request response data model
*/
-(NSDictionary*) describeLogsSyncWithRequest:(RdsDescribeLogsRequest*) describeLogsRequest
{
RdsDescribeLogsExecutor* excutor = [[RdsDescribeLogsExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeLogsRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeLogsResponse* response = [[RdsDescribeLogsResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeLogsResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeLogsAsyncWithRequest:(RdsDescribeLogsRequest*) describeLogsRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeLogsResponse* _Nullable describeLogsResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeLogsExecutor* excutor = [[RdsDescribeLogsExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeLogsRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeLogsResponse* response = [[RdsDescribeLogsResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeImportFiles sync request
@param describeImportFilesRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeImportFilesResponse` the request response data model
*/
-(NSDictionary*) describeImportFilesSyncWithRequest:(RdsDescribeImportFilesRequest*) describeImportFilesRequest
{
RdsDescribeImportFilesExecutor* excutor = [[RdsDescribeImportFilesExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeImportFilesRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeImportFilesResponse* response = [[RdsDescribeImportFilesResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeImportFilesResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeImportFilesAsyncWithRequest:(RdsDescribeImportFilesRequest*) describeImportFilesRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeImportFilesResponse* _Nullable describeImportFilesResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeImportFilesExecutor* excutor = [[RdsDescribeImportFilesExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeImportFilesRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeImportFilesResponse* response = [[RdsDescribeImportFilesResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
restoreDatabaseFromOSS sync request
@param restoreDatabaseFromOSSRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `restoreDatabaseFromOSSResponse` the request response data model
*/
-(NSDictionary*) restoreDatabaseFromOSSSyncWithRequest:(RdsRestoreDatabaseFromOSSRequest*) restoreDatabaseFromOSSRequest
{
RdsRestoreDatabaseFromOSSExecutor* excutor = [[RdsRestoreDatabaseFromOSSExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:restoreDatabaseFromOSSRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsRestoreDatabaseFromOSSResponse* response = [[RdsRestoreDatabaseFromOSSResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"restoreDatabaseFromOSSResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)restoreDatabaseFromOSSAsyncWithRequest:(RdsRestoreDatabaseFromOSSRequest*) restoreDatabaseFromOSSRequest
                       completionHandler:(void(^)(int statusCode,RdsRestoreDatabaseFromOSSResponse* _Nullable restoreDatabaseFromOSSResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsRestoreDatabaseFromOSSExecutor* excutor = [[RdsRestoreDatabaseFromOSSExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:restoreDatabaseFromOSSRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsRestoreDatabaseFromOSSResponse* response = [[RdsRestoreDatabaseFromOSSResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeParameterGroups sync request
@param describeParameterGroupsRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeParameterGroupsResponse` the request response data model
*/
-(NSDictionary*) describeParameterGroupsSyncWithRequest:(RdsDescribeParameterGroupsRequest*) describeParameterGroupsRequest
{
RdsDescribeParameterGroupsExecutor* excutor = [[RdsDescribeParameterGroupsExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeParameterGroupsRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeParameterGroupsResponse* response = [[RdsDescribeParameterGroupsResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeParameterGroupsResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeParameterGroupsAsyncWithRequest:(RdsDescribeParameterGroupsRequest*) describeParameterGroupsRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeParameterGroupsResponse* _Nullable describeParameterGroupsResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeParameterGroupsExecutor* excutor = [[RdsDescribeParameterGroupsExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeParameterGroupsRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeParameterGroupsResponse* response = [[RdsDescribeParameterGroupsResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
deleteBackup sync request
@param deleteBackupRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `deleteBackupResponse` the request response data model
*/
-(NSDictionary*) deleteBackupSyncWithRequest:(RdsDeleteBackupRequest*) deleteBackupRequest
{
RdsDeleteBackupExecutor* excutor = [[RdsDeleteBackupExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:deleteBackupRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDeleteBackupResponse* response = [[RdsDeleteBackupResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"deleteBackupResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)deleteBackupAsyncWithRequest:(RdsDeleteBackupRequest*) deleteBackupRequest
                       completionHandler:(void(^)(int statusCode,RdsDeleteBackupResponse* _Nullable deleteBackupResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDeleteBackupExecutor* excutor = [[RdsDeleteBackupExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:deleteBackupRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDeleteBackupResponse* response = [[RdsDeleteBackupResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeBackupSynchronicities sync request
@param describeBackupSynchronicitiesRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeBackupSynchronicitiesResponse` the request response data model
*/
-(NSDictionary*) describeBackupSynchronicitiesSyncWithRequest:(RdsDescribeBackupSynchronicitiesRequest*) describeBackupSynchronicitiesRequest
{
RdsDescribeBackupSynchronicitiesExecutor* excutor = [[RdsDescribeBackupSynchronicitiesExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeBackupSynchronicitiesRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeBackupSynchronicitiesResponse* response = [[RdsDescribeBackupSynchronicitiesResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeBackupSynchronicitiesResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeBackupSynchronicitiesAsyncWithRequest:(RdsDescribeBackupSynchronicitiesRequest*) describeBackupSynchronicitiesRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeBackupSynchronicitiesResponse* _Nullable describeBackupSynchronicitiesResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeBackupSynchronicitiesExecutor* excutor = [[RdsDescribeBackupSynchronicitiesExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeBackupSynchronicitiesRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeBackupSynchronicitiesResponse* response = [[RdsDescribeBackupSynchronicitiesResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeWhiteList sync request
@param describeWhiteListRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeWhiteListResponse` the request response data model
*/
-(NSDictionary*) describeWhiteListSyncWithRequest:(RdsDescribeWhiteListRequest*) describeWhiteListRequest
{
RdsDescribeWhiteListExecutor* excutor = [[RdsDescribeWhiteListExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeWhiteListRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeWhiteListResponse* response = [[RdsDescribeWhiteListResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeWhiteListResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeWhiteListAsyncWithRequest:(RdsDescribeWhiteListRequest*) describeWhiteListRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeWhiteListResponse* _Nullable describeWhiteListResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeWhiteListExecutor* excutor = [[RdsDescribeWhiteListExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeWhiteListRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeWhiteListResponse* response = [[RdsDescribeWhiteListResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
restoreDatabaseFromBackup sync request
@param restoreDatabaseFromBackupRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `restoreDatabaseFromBackupResponse` the request response data model
*/
-(NSDictionary*) restoreDatabaseFromBackupSyncWithRequest:(RdsRestoreDatabaseFromBackupRequest*) restoreDatabaseFromBackupRequest
{
RdsRestoreDatabaseFromBackupExecutor* excutor = [[RdsRestoreDatabaseFromBackupExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:restoreDatabaseFromBackupRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsRestoreDatabaseFromBackupResponse* response = [[RdsRestoreDatabaseFromBackupResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"restoreDatabaseFromBackupResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)restoreDatabaseFromBackupAsyncWithRequest:(RdsRestoreDatabaseFromBackupRequest*) restoreDatabaseFromBackupRequest
                       completionHandler:(void(^)(int statusCode,RdsRestoreDatabaseFromBackupResponse* _Nullable restoreDatabaseFromBackupResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsRestoreDatabaseFromBackupExecutor* excutor = [[RdsRestoreDatabaseFromBackupExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:restoreDatabaseFromBackupRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsRestoreDatabaseFromBackupResponse* response = [[RdsRestoreDatabaseFromBackupResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeParameterGroupParameters sync request
@param describeParameterGroupParametersRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeParameterGroupParametersResponse` the request response data model
*/
-(NSDictionary*) describeParameterGroupParametersSyncWithRequest:(RdsDescribeParameterGroupParametersRequest*) describeParameterGroupParametersRequest
{
RdsDescribeParameterGroupParametersExecutor* excutor = [[RdsDescribeParameterGroupParametersExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeParameterGroupParametersRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeParameterGroupParametersResponse* response = [[RdsDescribeParameterGroupParametersResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeParameterGroupParametersResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeParameterGroupParametersAsyncWithRequest:(RdsDescribeParameterGroupParametersRequest*) describeParameterGroupParametersRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeParameterGroupParametersResponse* _Nullable describeParameterGroupParametersResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeParameterGroupParametersExecutor* excutor = [[RdsDescribeParameterGroupParametersExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeParameterGroupParametersRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeParameterGroupParametersResponse* response = [[RdsDescribeParameterGroupParametersResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
failoverInstance sync request
@param failoverInstanceRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `failoverInstanceResponse` the request response data model
*/
-(NSDictionary*) failoverInstanceSyncWithRequest:(RdsFailoverInstanceRequest*) failoverInstanceRequest
{
RdsFailoverInstanceExecutor* excutor = [[RdsFailoverInstanceExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:failoverInstanceRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsFailoverInstanceResponse* response = [[RdsFailoverInstanceResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"failoverInstanceResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)failoverInstanceAsyncWithRequest:(RdsFailoverInstanceRequest*) failoverInstanceRequest
                       completionHandler:(void(^)(int statusCode,RdsFailoverInstanceResponse* _Nullable failoverInstanceResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsFailoverInstanceExecutor* excutor = [[RdsFailoverInstanceExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:failoverInstanceRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsFailoverInstanceResponse* response = [[RdsFailoverInstanceResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
disableInternetAccess sync request
@param disableInternetAccessRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `disableInternetAccessResponse` the request response data model
*/
-(NSDictionary*) disableInternetAccessSyncWithRequest:(RdsDisableInternetAccessRequest*) disableInternetAccessRequest
{
RdsDisableInternetAccessExecutor* excutor = [[RdsDisableInternetAccessExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:disableInternetAccessRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDisableInternetAccessResponse* response = [[RdsDisableInternetAccessResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"disableInternetAccessResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)disableInternetAccessAsyncWithRequest:(RdsDisableInternetAccessRequest*) disableInternetAccessRequest
                       completionHandler:(void(^)(int statusCode,RdsDisableInternetAccessResponse* _Nullable disableInternetAccessResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDisableInternetAccessExecutor* excutor = [[RdsDisableInternetAccessExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:disableInternetAccessRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDisableInternetAccessResponse* response = [[RdsDisableInternetAccessResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeInstances sync request
@param describeInstancesRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeInstancesResponse` the request response data model
*/
-(NSDictionary*) describeInstancesSyncWithRequest:(RdsDescribeInstancesRequest*) describeInstancesRequest
{
RdsDescribeInstancesExecutor* excutor = [[RdsDescribeInstancesExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeInstancesRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeInstancesResponse* response = [[RdsDescribeInstancesResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeInstancesResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeInstancesAsyncWithRequest:(RdsDescribeInstancesRequest*) describeInstancesRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeInstancesResponse* _Nullable describeInstancesResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeInstancesExecutor* excutor = [[RdsDescribeInstancesExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeInstancesRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeInstancesResponse* response = [[RdsDescribeInstancesResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
createROInstance sync request
@param createROInstanceRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `createROInstanceResponse` the request response data model
*/
-(NSDictionary*) createROInstanceSyncWithRequest:(RdsCreateROInstanceRequest*) createROInstanceRequest
{
RdsCreateROInstanceExecutor* excutor = [[RdsCreateROInstanceExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:createROInstanceRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCreateROInstanceResponse* response = [[RdsCreateROInstanceResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"createROInstanceResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)createROInstanceAsyncWithRequest:(RdsCreateROInstanceRequest*) createROInstanceRequest
                       completionHandler:(void(^)(int statusCode,RdsCreateROInstanceResponse* _Nullable createROInstanceResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsCreateROInstanceExecutor* excutor = [[RdsCreateROInstanceExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:createROInstanceRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCreateROInstanceResponse* response = [[RdsCreateROInstanceResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeAuditOptions sync request
@param describeAuditOptionsRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeAuditOptionsResponse` the request response data model
*/
-(NSDictionary*) describeAuditOptionsSyncWithRequest:(RdsDescribeAuditOptionsRequest*) describeAuditOptionsRequest
{
RdsDescribeAuditOptionsExecutor* excutor = [[RdsDescribeAuditOptionsExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeAuditOptionsRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeAuditOptionsResponse* response = [[RdsDescribeAuditOptionsResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeAuditOptionsResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeAuditOptionsAsyncWithRequest:(RdsDescribeAuditOptionsRequest*) describeAuditOptionsRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeAuditOptionsResponse* _Nullable describeAuditOptionsResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeAuditOptionsExecutor* excutor = [[RdsDescribeAuditOptionsExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeAuditOptionsRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeAuditOptionsResponse* response = [[RdsDescribeAuditOptionsResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
deleteAccount sync request
@param deleteAccountRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `deleteAccountResponse` the request response data model
*/
-(NSDictionary*) deleteAccountSyncWithRequest:(RdsDeleteAccountRequest*) deleteAccountRequest
{
RdsDeleteAccountExecutor* excutor = [[RdsDeleteAccountExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:deleteAccountRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDeleteAccountResponse* response = [[RdsDeleteAccountResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"deleteAccountResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)deleteAccountAsyncWithRequest:(RdsDeleteAccountRequest*) deleteAccountRequest
                       completionHandler:(void(^)(int statusCode,RdsDeleteAccountResponse* _Nullable deleteAccountResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDeleteAccountExecutor* excutor = [[RdsDeleteAccountExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:deleteAccountRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDeleteAccountResponse* response = [[RdsDeleteAccountResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
modifyParameterGroupParameters sync request
@param modifyParameterGroupParametersRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `modifyParameterGroupParametersResponse` the request response data model
*/
-(NSDictionary*) modifyParameterGroupParametersSyncWithRequest:(RdsModifyParameterGroupParametersRequest*) modifyParameterGroupParametersRequest
{
RdsModifyParameterGroupParametersExecutor* excutor = [[RdsModifyParameterGroupParametersExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:modifyParameterGroupParametersRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsModifyParameterGroupParametersResponse* response = [[RdsModifyParameterGroupParametersResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"modifyParameterGroupParametersResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)modifyParameterGroupParametersAsyncWithRequest:(RdsModifyParameterGroupParametersRequest*) modifyParameterGroupParametersRequest
                       completionHandler:(void(^)(int statusCode,RdsModifyParameterGroupParametersResponse* _Nullable modifyParameterGroupParametersResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsModifyParameterGroupParametersExecutor* excutor = [[RdsModifyParameterGroupParametersExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:modifyParameterGroupParametersRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsModifyParameterGroupParametersResponse* response = [[RdsModifyParameterGroupParametersResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
createInstanceByTimeInCrossRegion sync request
@param createInstanceByTimeInCrossRegionRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `createInstanceByTimeInCrossRegionResponse` the request response data model
*/
-(NSDictionary*) createInstanceByTimeInCrossRegionSyncWithRequest:(RdsCreateInstanceByTimeInCrossRegionRequest*) createInstanceByTimeInCrossRegionRequest
{
RdsCreateInstanceByTimeInCrossRegionExecutor* excutor = [[RdsCreateInstanceByTimeInCrossRegionExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:createInstanceByTimeInCrossRegionRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCreateInstanceByTimeInCrossRegionResponse* response = [[RdsCreateInstanceByTimeInCrossRegionResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"createInstanceByTimeInCrossRegionResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)createInstanceByTimeInCrossRegionAsyncWithRequest:(RdsCreateInstanceByTimeInCrossRegionRequest*) createInstanceByTimeInCrossRegionRequest
                       completionHandler:(void(^)(int statusCode,RdsCreateInstanceByTimeInCrossRegionResponse* _Nullable createInstanceByTimeInCrossRegionResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsCreateInstanceByTimeInCrossRegionExecutor* excutor = [[RdsCreateInstanceByTimeInCrossRegionExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:createInstanceByTimeInCrossRegionRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsCreateInstanceByTimeInCrossRegionResponse* response = [[RdsCreateInstanceByTimeInCrossRegionResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}

/**
describeIntercept sync request
@param describeInterceptRequest request param
@return key `statusCode` http request status code type is int
            `dataResult` the http request response data  type is NSData
            `requestError` the request error type is NSError
            `describeInterceptResponse` the request response data model
*/
-(NSDictionary*) describeInterceptSyncWithRequest:(RdsDescribeInterceptRequest*) describeInterceptRequest
{
RdsDescribeInterceptExecutor* excutor = [[RdsDescribeInterceptExecutor alloc] initWithJDCloudClient:self];
    NSDictionary* responseResult = [excutor executeSync:describeInterceptRequest];
    if(responseResult)
    {
        NSData * resultData = [[responseResult objectForKey:@"dataResult"] copy];
        if(resultData)
        {
            NSMutableDictionary* result = [[NSMutableDictionary alloc]initWithDictionary:responseResult];
            
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeInterceptResponse* response = [[RdsDescribeInterceptResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        [result setValue:response forKey:@"describeInterceptResponse"];
                        return result;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
    }
    return responseResult;
}


-(void)describeInterceptAsyncWithRequest:(RdsDescribeInterceptRequest*) describeInterceptRequest
                       completionHandler:(void(^)(int statusCode,RdsDescribeInterceptResponse* _Nullable describeInterceptResponse, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
RdsDescribeInterceptExecutor* excutor = [[RdsDescribeInterceptExecutor alloc] initWithJDCloudClient:self];
    [excutor executeAsync:describeInterceptRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        if(!error&&responseData)
        {
            NSData * resultData = [responseData copy];
            NSError *jsonError;
            NSDictionary* allKeys = [NSJSONSerialization JSONObjectWithData:resultData options:0 error:&jsonError];
            if(!jsonError&& allKeys)
            {
                @try {
                    RdsDescribeInterceptResponse* response = [[RdsDescribeInterceptResponse alloc]initWithDic:allKeys];
                    if(response)
                    {
                        completionHandler(statusCode,response,responseData,error);
                        return;
                    }
                } @catch (NSException *exception) {
                    if([GlobalConfig isDebug]){
                        NSLog(@"json serialize response data error,info is %@",exception.reason);
                    }
                }
            }
        }
        completionHandler(statusCode,nil,responseData,error);
    }];
}


 /**
 rds common sync request
 @param  jdcloudDataRequest request param
 @return key `statusCode` http request status code type is int
             `dataResult` the http request response data  type is NSData
             `requestError` the request error type is NSError
 */
 -(NSDictionary*) rdsCommonSyncWithRequest:(JDCloudDataRequest*) jdcloudDataRequest
                                                   url:(NSString*) url
                                                method:(NSString*) method{
    CommonExecutor* excutor = [[CommonExecutor alloc] initWithJDCloudClient:self url:url method:method];
    NSDictionary* responseResult = [excutor executeDataSync:jdcloudDataRequest];
    return responseResult;
}

-(void)rdsCommonAsyncWithRequest:(JDCloudDataRequest*) jdcloudDataRequest
                                         url:(NSString*) url
                                      method:(NSString*) method
                           completionHandler:(void(^)(int statusCode, NSData* _Nullable responseData,NSError * _Nullable error))completionHandler
{
     CommonExecutor* excutor = [[CommonExecutor alloc] initWithJDCloudClient:self url:url method:method];
    
    [excutor executeDataAsync:jdcloudDataRequest completionHandler:^(int statusCode, NSData * _Nullable responseData, NSError * _Nullable error) {
        completionHandler(statusCode,responseData,error);
    }];
} 

@end
